package com.jinzhi.jzweb.domain;

import cn.afterturn.easypoi.excel.annotation.Excel;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;

import com.baomidou.mybatisplus.enums.FieldFill;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import java.util.List;


/**
 *
 * <pre>
 * 赛道抽签表（存储抽签信息）
 * </pre>
 * <small> 2023-10-16 16:36:18 | lance</small>
 */
@Data
@SuppressWarnings("serial")
@TableName("track_draw")
//这是的这里继承的基础服务类，有几个基本字段
public class TrackDrawDO implements Serializable {
	@TableId
	private Long id;

    /** 参赛学校 */
    @Excel(name = "参赛学校" ,width = 40)
    @TableField("unit_name")
    private String unitName;


    /** 参赛选手一 */
    @TableField("name")
    private String name;

    /** 1号选手赛道 */
    @Excel(name = "17号检录" ,width = 20)
    @TableField("track")
    private String track;

    /** 1号选手场次 */
//    @Excel(name = "场次" ,width = 20)
    @TableField("place_num")
    private String placeNum;

    /** 3号选手赛道 */
//    @Excel(name = "检录号" ,width = 20)
    @TableField("track3")
    private String track3;


    /** 创建时间 */
    @TableField(value = "create_time",fill = FieldFill.INSERT)
    private Date createTime;

    /** 排序 */
    @TableField(value = "sort")
    private Integer sort;

    /** 参赛选手二 */
//    @Excel(name = "参赛选手二" ,width = 20)
    @TableField("name2")
    private String name2;

    /** 2号选手赛道 */
    @Excel(name = "18号检录" ,width = 20)
    @TableField("track2")
    private String track2;

    /** 2号选手场次 */
//    @Excel(name = "场次" ,width = 20)
    @TableField("place_num2")
    private String placeNum2;

    /** 参赛选手3 */
    @TableField("name3")
    private String name3;

    /** 3号选手场次 */
    @TableField("place_num3")
//    @Excel(name = "检录号" ,width = 20)
    private String placeNum3;

    @TableField(exist = false)
    private boolean hasDraw;

    @TableField(exist = false)
    private List<TrackDrawDO> trackDrawDOList;

    /**
     * 抽签类型 1：B赛场抽签
     *        2：C赛场抽签
     */
    @TableField(exist = false)
    private Integer drawType;

    /**
     * 用于判断修改抽签状态
     *  1：抽完赛道
     *  2：抽完场次
     *  3：赛道和场次都抽完
     */
    @TableField("flag_update")
    private Integer flagUpdate;

    /**
     * 页码
     */
    @TableField("page_num")
    private Integer pageNum;

}
